package drds.data_propagate.sink;

import drds.data_propagate.common.LifeCycle;

/**
 * 处理下sink时的数据流
 */
public interface EventDownStreamHandler<T> extends LifeCycle {

    /**
     * 提交到store之前做一下处理，允许替换Event
     */
    public T before(T events);

    /**
     * store处于full后，retry时处理做一下处理
     */
    public T retry(T events);

    /**
     * 提交store成功后做一下处理
     */
    public T after(T events);
}
